home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1996 #15
/
Monster Media Number 15 (Monster Media)(July 1996).ISO
/
prog_pas
/
cddk9605.zip
/
HEADERS.ZIP
/
SLICER.INT
< prev
next >
Wrap
Text File
|
1996-05-17
|
4KB
|
112 lines
{ ───────────────────────────────────────────────────────────────────────── }
{ Name : SLICER.PAS }
{ Description : Time-slicing support }
{ Warning : Expect a rewrite of this unit soon. }
{ ───────────────────────────────────────────────────────────────────────── }
UNIT Slicer;
{$B-} { . . . . . . . . . . . . . . . . . . . . Shortcut boolean evaluation }
{$F+} { . . . . . . . . . . . . . . . . . . . . Force far calls for safety }
{$I-} { . . . . . . . . . . . . . . . . . . . Disable input/output checking }
{$O+} { . . . . . . . . . . . . . . . . . . Allow this unit to be overlayed }
{$Q-} { . . . . . . . . . . . . . . Do not generate overflow-checking code }
{$R-} { . . . . . . . . . . . . . . . . Do not generate range-checking code }
{$S-} { . . . . . . . . . . . . . . . . Do not generate stack-checking code }
{$X+} { . . . . . . . . . . . Extended syntax for pChars and function calls }
INTERFACE
TYPE
MT_Type = RECORD
Name : STRING[15]; { . . . . . . The name of the multi-tasker }
Abbr : STRING[3]; { . . . . . . . . Three-letter abbreviation }
CritBegin : PROCEDURE; { . . . . The program cannot be interrupted }
CritEnd : PROCEDURE; { . . . . . . . The critical task has ended }
Release : PROCEDURE; { . . . . Releases the time-slice to the OS }
Version : FUNCTION:Word; { . . . . . High byte=major; Low byte=minor }
END;
PROCEDURE NullProc;
PROCEDURE DOS_Release;
FUNCTION DOS_Version:Word;
PROCEDURE DesqView_Critical_Begin;
PROCEDURE DesqView_Critical_End;
PROCEDURE DesqView_Release;
FUNCTION DesqView_Version:Word;
PROCEDURE DoubleDOS_Critical_Begin;
PROCEDURE DoubleDOS_Critical_End;
PROCEDURE DoubleDOS_Release;
FUNCTION FourDOS:Boolean;
FUNCTION FourDOS_Version:Word;
FUNCTION OS2_Version:Word;
PROCEDURE Windows_Critical_Begin;
PROCEDURE Windows_Critical_End;
PROCEDURE Windows_Release;
FUNCTION Windows_Version:Word;
CONST
Tasker : ARRAY[0..7] OF MT_Type = (
(Name : 'MS-DOS';
Abbr : 'DOS';
CritBegin : NullProc;
CritEnd : NullProc;
Release : DOS_Release;
Version : DOS_Version),
(Name : '4DOS';
Abbr : '4DS';
CritBegin : NullProc;
CritEnd : NullProc;
Release : DOS_Release;
Version : FourDOS_Version),
(Name : 'Desqview';
Abbr : 'Des';
CritBegin : DesqView_Critical_Begin;
CritEnd : DesqView_Critical_End;
Release : DesqView_Release;
Version : DesqView_Version),
(Name : 'DoubleDOS';
Abbr : 'Dbl';
CritBegin : DoubleDOS_Critical_Begin;
CritEnd : DoubleDOS_Critical_End;
Release : DoubleDOS_Release),
(Name : 'OS/2';
Abbr : 'OS2';
CritBegin : NullProc;
CritEnd : NullProc;
Release : Windows_Release;
Version : OS2_Version),
(Name : 'Windows/286';
Abbr : 'Win';
CritBegin : Windows_Critical_Begin;
CritEnd : Windows_Critical_End;
Release : Windows_Release;
Version : Windows_Version),
(Name : 'Windows/Enh';
Abbr : 'Win';
CritBegin : Windows_Critical_Begin;
CritEnd : Windows_Critical_End;
Release : Windows_Release;
Version : Windows_Version),
(Name : 'Windows NT';
Abbr : 'WNT';
CritBegin : Windows_Critical_Begin;
CritEnd : Windows_Critical_End;
Release : Windows_Release;
Version : Windows_Version));
VAR
MT : Byte;